package algorithms;

import java.util.ArrayList;

import templates.Operator;
import templates.State;

public class HillClimbingStrategy<Template> implements Strategy<Template>{
	Heuristic<Template> h;
	@Override
	public void execute(State<Template> iState,
			ArrayList<State<Template>> fStates,
			ArrayList<Operator<Template>> opr, String log) {
		HillClimbing<Template> hill=new HillClimbing<Template>(iState,fStates,opr,log);
		hill.setH(h);
		hill.executeAlgorithm();
		
	}	
	public void setHeuristic(Heuristic<Template> h)
	{
		this.h=h;
	}

}
